SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
-- Retorna la cantidad de dias de licencia por cada licencia del agente. - Listado General
CREATE PROCEDURE [dbo].[paObtenerDiasDeLicenciaPorAgenteListadoGeneral]
@Licencia INT = NULL,
@FechaDesde DATETIME,
@FechaHasta DATETIME,
@Turno INT=NULL

AS
SET NOCOUNT ON
SET DATEFORMAT DMY
DECLARE @IdTurno INT

IF @Turno IS NULL
	SELECT @IdTurno = 0
ELSE
	SELECT @IdTurno = @Turno

INSERT INTO Tb_LicenciasEntreFechasDeTodosLosAgentes2007  SELECT  DISTINCT l.documento, L.Descripcion, DescripcionAplicacion, dbo.fnDiasDeLicenciaGeneral(Agente, @FechaDesde, @FechaHasta, IdLicencia,  CASE WHEN UTDuracionMaxima = 1 THEN 'C' ELSE 'H' END, L.Aplicacion, @IdTurno) AS Dias
  FROM  vw_LicenciasDelAgente L
	WHERE ( (@Turno IS NULL AND Aplicacion IN (1,2,3)) OR (@Turno IS NOT NULL AND Aplicacion = 2) )
		AND ( (@Licencia IS NULL) OR (@Licencia IS NOT NULL AND IdLicencia = @Licencia) )


/*
SELECT DISTINCT l.documento, L.Descripcion, DescripcionAplicacion, dbo.fnDiasDeLicencia(Agente, @FechaDesde, @FechaHasta, IdLicencia,  CASE WHEN UTDuracionMaxima = 1 THEN 'C' ELSE 'H' END, L.Aplicacion, @IdTurno) AS Dias
  FROM  vw_LicenciasDelAgente L
	WHERE ( (@Turno IS NULL AND Aplicacion IN (1,3)) OR (@Turno IS NOT NULL AND Aplicacion = 2) )
		AND ( (@Licencia IS NULL) OR (@Licencia IS NOT NULL AND IdLicencia = @Licencia) )
*/
GO
